package com.hexinfo.dmpro.sparing.model;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.LocalDate;
import org.springframework.validation.annotation.Validated;

/**
 * 热备源级日志分析表
 *
 * @author zax
 * @date 2023-11-18 18:55:48
 */
@Data
@Validated
@TableName("TD_HOT_STANDBY_LOG_SOURCE")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "热备源级日志分析表")
public class HotStandbyLogSource extends Model<HotStandbyLogSource> {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(type= IdType.ASSIGN_UUID)
    @ApiModelProperty(value="id")
    private String id;
    /**
     * 源名
     */
    @ApiModelProperty(value="源名")
    private String sourceName;
    /**
     * 表数量/HDFS数量
     */
    @ApiModelProperty(value="表数量/HDFS数量")
    private String tableHdfsNumber;
    /**
     * 任务日期
     */
    @ApiModelProperty(value="任务日期")
    private String taskDate;
    /**
     * 状态（已完成、待执行、进行中、失败）
     */
    @ApiModelProperty(value="状态（已完成、待执行、进行中、失败）")
    private String taskState;
    /**
     * 热备用时
     */
    @ApiModelProperty(value="热备用时")
    private String hotStandbyTime;
    /**
     * 用时详细
     */
    @ApiModelProperty(value="用时详细")
    private String hotStandbyTimeData;
    /**
     * 开始时间
     */
    @ApiModelProperty(value="开始时间")
    private String hotStandbyStaTime;
    /**
     * 结束时间
     */
    @ApiModelProperty(value="结束时间")
    private String hotStandbyEndTime;
    /**
     * 创建人
     */
    @ApiModelProperty(value="创建人")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;
    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
    private Date createTime;
    /**
     * 更新人
     */
    @ApiModelProperty(value="更新人")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String lastUpdateBy;
    /**
     * 更新时间
     */
    @ApiModelProperty(value="更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
    private Date lastUpdateTime;
    /**
     * 删除标识
     */
    @ApiModelProperty(value="删除标识")
    @TableField(fill = FieldFill.INSERT)
    private String del;
    /**
     * 同步范围结束时间
     */
    @ApiModelProperty(value="同步范围结束时间")
    private String syncRangeEndTime;
    /**
     * 同步范围开始时间
     */
    @ApiModelProperty(value="同步范围开始时间")
    private String syncRangeStartTime;
    /**
     * 源count总条数
     */
    @ApiModelProperty(value="源count总条数")
    private Long sourceCountNumber;
    /**
     * 目标count总条数
     */
    @ApiModelProperty(value="目标count总条数")
    private Long targetCountNumber;
    /**
     * 重跑状态（重跑中、重跑失败、重跑成功）
     */
    @ApiModelProperty(value="重跑状态（重跑中、重跑失败、重跑成功）")
    private String rerunState;
    /**
     * 消息中心id
     */
    @ApiModelProperty(value="消息中心id")
    private String messageId;
}
